package my.learn.common.web.core.annotation;

import java.lang.annotation.Annotation;
import java.lang.reflect.AnnotatedElement;
import java.lang.reflect.Method;
import java.util.List;

/**
 * 合并的注解
 */
public class MergedAnnotationElement {


    /**
     * 当前元素
     */
    AnnotatedElement element;

    /**
     * 注解
     */
    Annotation source;
    /**
     * 当前元素的方法
     */
    List<Method> annotationMethodList;


    /**
     * 当前元素上注解上的注解
     */
    List<MergedAnnotationElement> mergedAnnotationElementList;

    public AnnotatedElement getElement() {
        return element;
    }

    public void setElement(AnnotatedElement element) {
        this.element = element;
    }

    public List<Method> getAnnotationMethodList() {
        return annotationMethodList;
    }

    public void setAnnotationMethodList(List<Method> annotationMethodList) {
        this.annotationMethodList = annotationMethodList;
    }

    public List<MergedAnnotationElement> getMergedAnnotationClassList() {
        return mergedAnnotationElementList;
    }

    public void setMergedAnnotationClassList(List<MergedAnnotationElement> mergedAnnotationElementList) {
        this.mergedAnnotationElementList = mergedAnnotationElementList;
    }

    public Annotation getSource() {
        return source;
    }

    public void setSource(Annotation source) {
        this.source = source;
    }

}
